package Thread;

//实现Runnable接口，重写run

class MyThread3 implements Runnable{
//Runnable可以理解为“可执行的”，通过这个接口，可以抽象表示出一段可以被其他实体来执行的代码
    @Override
    public void run() {
        while(true){
            System.out.println("hello runnable");
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
        }
    }
}

public class ThreadDemo3 {
    public static void main(String[] args) throws InterruptedException {
        /*Runnable runnable=new MyThread3();
        Thread t=new MyThread(runnable);*/
        //还是需要搭配Thread类才能真正在系统中创建出线程
        //这种写法其实就是把线程和要执行的任务进行了解耦合了
        Thread t=new Thread(new MyThread3());
        t.start();
        while(true){
            System.out.println("hello main");
            Thread.sleep(1000);
        }
    }
}
